1. How to check if the bb file format is correct.

contrib/oe-stylize.py

pitfall: OE contributors don't follow it themselves.

pitfall: If people don't follow it, scm merge will create hidden
	 issues.  (Example)

pitfall: include, inherit.

2. What to do if we need to move files from one package to another.

1) Divide A into A and B.  A and B are basically the same software.

=> make A RDEPENDS B, increase A's PR.  (need opkg -force-overwrite
upgrade atm)

2) Replace foo by A and B.  foo and A + B are not the same software.

=> A RDEPENDS B, A RCONFLICTS, RPROVIDES, RREPLACES foo.  You won't be
able to get foo back after this.

* where to look: package*.bbclass.  (package_opk.bbclass)


3. How to create new opk files only for compiled projects. Qtopia for
example.  I don't want to compile again....

=> trace package.bbclass, package_opk.bbclass:
   package
   package_write_opk
   package_write

4. How to configure a new distribution. (GTA03)

=> new machine file.  read task-base.bb
=> read om-gta0[12].conf.  grep the variable inside it.
=> IMAGE commands.

5. the difference between DEPENDS, RDEPENDS_${PN}

=> how to create bitbake doc:
   john@buddha:~/oe/bitbake-1.8/doc/manual$ make html
=> runtime and compile time dependency.


6. when to increment/change PE PV PR

PE: incompatible change.  e.g. git -> svn.  can trigger rebuild.
PV: usually match with software version.
PR: the reversion of the bb file itself.  trigger rebuild.

* where to look: conf/bitbake.conf, classes/package*.bbclass


7. $D and ${D}

bitbake will extend ${D} but not $D.  check bitbake manual.

* where to look: bitbake/lib/bb/parse/parse_py/
